// 业务错误
class BusinessException implements Exception{
  final String code;
  final String msg;
  final dynamic data;

  BusinessException({
    required this.code, 
    required this.msg,
    this.data,
  });

  @override
  String toString() {
    return 'BussinessException[$code]: msg = $msg, data = $data';
  }
}